namespace ext.menu
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <summary>
	/// A menu containing an {@link Ext.DatePicker} Component.  Notes:    Although not listed here, the constructor for this class
	/// accepts all of the configuration options of {@link Ext.DatePicker}.  If subclassing DateMenu, any configuration options for the DatePicker must be
	/// applied to the initialConfig property of the DateMenu.
	/// Applying {@link Ext.DatePicker DatePicker} configuration settings to
	/// this will not affect the DatePicker&apos;s configuration.
	/// </summary>
	/// <htmlSummary>
	/// &lt;p&gt;A menu containing an {@link Ext.DatePicker} Component.&lt;/p&gt;
	/// &lt;p&gt;Notes:&lt;/p&gt;&lt;div class=&quot;mdetail-params&quot;&gt;&lt;ul&gt;
	/// &lt;li&gt;Although not listed here, the &lt;b&gt;constructor&lt;/b&gt; for this class
	/// accepts all of the configuration options of &lt;b&gt;{@link Ext.DatePicker}&lt;/b&gt;.&lt;/li&gt;
	/// &lt;li&gt;If subclassing DateMenu, any configuration options for the DatePicker must be
	/// applied to the &lt;tt&gt;&lt;b&gt;initialConfig&lt;/b&gt;&lt;/tt&gt; property of the DateMenu.
	/// Applying {@link Ext.DatePicker DatePicker} configuration settings to
	/// &lt;b&gt;&lt;tt&gt;this&lt;/tt&gt;&lt;/b&gt; will &lt;b&gt;not&lt;/b&gt; affect the DatePicker&apos;s configuration.&lt;/li&gt;
	/// &lt;/ul&gt;&lt;/div&gt;
	/// </htmlSummary>
	/// <definedin>src\widgets\menu\DateMenu.js</definedin>
	[ScriptName("DateMenu")]
	[ScriptNamespace("Ext.menu")]
	[Imported()]
	public partial class DateMenu : ext.menu.Menu
	{
		
		#region Constructors
		public DateMenu(ext.menu.DateMenu_Configuration config)
		{
		}
		
		/// <summary>Constructor</summary>
		public DateMenu()
		{
		}
		#endregion
		
		#region Fields
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("enableScrolling")]
		public bool EnableScrolling;
		
		/// <summary>
		/// Optional. A function that will handle the select event of this menu.
		/// The handler is passed the following parameters:   picker : DatePicker The Ext.DatePicker.   date : Date The selected date.
		/// </summary>
		/// <htmlSummary>
		/// Optional. A function that will handle the select event of this menu.
		/// The handler is passed the following parameters:&lt;div class=&quot;mdetail-params&quot;&gt;&lt;ul&gt;
		/// &lt;li&gt;&lt;code&gt;picker&lt;/code&gt; : DatePicker&lt;div class=&quot;sub-desc&quot;&gt;The Ext.DatePicker.&lt;/div&gt;&lt;/li&gt;
		/// &lt;li&gt;&lt;code&gt;date&lt;/code&gt; : Date&lt;div class=&quot;sub-desc&quot;&gt;The selected date.&lt;/div&gt;&lt;/li&gt;
		/// &lt;/ul&gt;&lt;/div&gt;
		/// </htmlSummary>
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("handler")]
		public System.Delegate Handler;
		
		/// <summary>
		/// The scope (this reference) in which the {@link #handler}
		/// function will be called. Defaults to this DateMenu instance.
		/// </summary>
		/// <htmlSummary>
		/// The scope (&lt;tt&gt;&lt;b&gt;this&lt;/b&gt;&lt;/tt&gt; reference) in which the &lt;code&gt;{@link #handler}&lt;/code&gt;
		/// function will be called. Defaults to this DateMenu instance.
		/// </htmlSummary>
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("scope")]
		public object Scope;
		
		/// <summary>False to continue showing the menu after a date is selected, defaults to true.</summary>
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("hideOnClick")]
		public bool HideOnClick;
		
		/// <summary>An id to assign to the underlying date picker. Defaults to null.</summary>
		/// <htmlSummary>An id to assign to the underlying date picker. Defaults to &lt;tt&gt;null&lt;/tt&gt;.</htmlSummary>
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("pickerId")]
		public string PickerId;
		
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("maxHeight")]
		public System.Number MaxHeight;
		
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("scrollIncrement")]
		public System.Number ScrollIncrement;
		
		/// <summary>Fires when a date is selected from the {@link #picker Ext.DatePicker}</summary>
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("selectEventName")]
		public const string SelectEventName = "select";
		#endregion
		
		#region Properties
		/// <summary>The {@link Ext.DatePicker} instance for this DateMenu</summary>
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("picker")]
		[IntrinsicProperty()]
		public ext.DatePicker Picker
		{
			get
			{
				throw new System.Exception("Imported - not implemented");
			}
			set
			{
			}
		}
		#endregion
		
		#region Events
		/// <summary>Fires when a date is selected from the {@link #picker Ext.DatePicker}</summary>
		/// <definedin>src\widgets\menu\DateMenu.js</definedin>
		[ScriptName("select")]
		public event ext.auto.Delegate_ext_DatePicker_And_System_DateTime Select;
		#endregion
	}
}
